package net.aiion.weave.spi.startup;

import net.aiion.weave.spi.naming.callbacks.FeedDispatchedCallback;
import net.aiion.weave.spi.naming.callbacks.RouteDispatchedCallback;

public interface ConversationContextStartup {
    String getConversationContextId();

    ConversationContextStartup dispatchRoute(String aRoute);

    ConversationContextStartup dispatchRoute(String aRoute, RouteDispatchedCallback aRouteDispatchedCallback);

    ConversationContextStartup dispatchFeed(String aFeedName, String aFeedValue);

    ConversationContextStartup dispatchFeed(String aFeedName, String aFeedValue,
        FeedDispatchedCallback aFeedDispatchedCallback);

    void executeShutdown();
}
